//import java.util.Scanner;
//import java.text.DecimalFormat;
//
//
//abstract class shape {// 抽象类
//
//    public abstract double getArea();// 求面积
//
//    public abstract double getPerimeter(); // 求周长
//}
//
//
//class Circle extends shape {
//    private final double r;
//    public Circle(double r) {
//        this.r = r;
//    }
//    public double getArea() {
//        return Math.PI * r * r;
//    }
//    public double getPerimeter() {
//        return 2 * Math.PI * r;
//    }
//}
//
///* 你提交的代码将被嵌入到这里 */
//
//public class Main {
//    public static void main(String[] args) {
//        Scanner input = new Scanner(System.in);
//        DecimalFormat d = new DecimalFormat("#.####");// 保留4位小数
//        double r = input.nextDouble( );//输入圆的半径
//        shape c = new  Circle(r);
//
//        System.out.println(d.format(c.getArea()));
//        System.out.println(d.format(c.getPerimeter()));
//        input.close();
//    }
//}

//
//import java.util.Scanner;
//public class Main{
//    public static void main(String[] args) {
//        Scanner scan = new Scanner(System.in);
//        double length = scan.nextDouble();
//        double wide = scan.nextDouble();
//        Rectangle r = new Rectangle(length,wide);
//        System.out.printf("%.2f ",r.getPerimeter());
//        System.out.printf("%.2f",r.getArea());
//        System.out.println();
//        length = scan.nextDouble();
//        wide = scan.nextDouble();
//        double height = scan.nextDouble();
//        Cuboid  c = new Cuboid (length, wide, height);
//        System.out.printf("%.2f ",c.getPerimeter());
//        System.out.printf("%.2f ",c.getArea());
//        System.out.printf("%.2f",c.getVolume());
//
//        scan.close();
//    }
//}

///* 你的代码被嵌在这里 */
//class Rectangle{
//    public double length;//长方形的长度
//    public double wide;//长方形的宽度
//
//    public Rectangle(double length,double wide){
//        this.length = length;
//        this.wide = wide;
//    }
//    public double getPerimeter(){
//        return (length+wide)*2;
//    }
//    public double getArea(){
//        return length*wide;
//    }
//}
//
//class Cuboid extends Rectangle{
//    private double height;//长方体的高度
//    public Cuboid(double length,double wide,double height){
//        super(length,wide);
//        this.height = height;
//    }
//    @Override
//    public double getPerimeter(){
//        return 4*(length+wide+height);
//    }
//    @Override
//    public double getArea(){
//        return 2*(length*wide+length*height+wide*height);
//    }
//
//    public double getVolume(){
//        return length*wide*height;
//    }
//}

//1、定义一个接口 Shape 用于表示图形，其包含一个 double  length() 的方法用于求周长。
//        2、定义三角形类 Triangle 、长方形类 Rectangle 、圆形类Circle分别实现接口 Shape
//        3、定义测试类ShapeTest并使用 Shape接口定义变量shape，用其指向不同类形的对象，输出各种图形的周长。
//
//        提示：
//        1、计算圆周长时PI取3.14即可；
//        2、需要判断能否构成三角形（任意两个边的和大于第三边），不能构成三角形的话周长为0。
//输入格式:
//        输入多组double型数据，具体如下：
//        1            //表示圆的半径；
//        2 3         //表示长方形的长度、宽度
//        4 5 6     //表示三角形的三边的长度
//若输入数据中有0或负数，则不表示任何图形，周长为0。
import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while(in.hasNextDouble()){
            double a = in.nextDouble();
            if(in.hasNextDouble()==false)
                break;
            double b = in.nextDouble();
            if(in.hasNextDouble()==false)
                break;
            double c = in.nextDouble();
            Shape s1 = new Circle(a);
            Shape s2 = new Rectangle(b,c);
            Shape s3 = new Triangle(a,b,c);
            System.out.println(s1.length());
            System.out.println(s2.length());
            if(s3.length()==0){
                System.out.println(0);
            }
            else{
                System.out.println(s3.length());
            }
        }
    }
}
interface Shape{
    int goal=0;
    public double length();
}
class Rectangle implements Shape{
    private double a;
    private double b;
    public Rectangle(double a,double b){
        this.a = a;
        this.b = b;
    }
    public double length(){
        return 2*(a+b);
    }
}
class Circle implements Shape{
    private double r;
    public Circle(double r){
        this.r = r;
    }
    public double length(){
        return 2*Math.PI*r;
    }
}
class Triangle implements Shape{
    private double a;
    private double b;
    private double c;
    public Triangle(double a,double b,double c){
        this.a = a;
        this.b = b;
        this.c = c;
    }
    public double length(){
        if(a+b>c&&a+c>b&&b+c>a){
            return a+b+c;
        }
        else{
            return goal;
        }
    }
}